# 定义函数
def greet():
    # 函数体
    print('这是第一个函数')


# 调用函数
greet()


# 带参数的函数，可以接受多个参数，
def add_numbers(a, b):
    sum_v = a + b
    print(sum_v)


# 接受多个参数，参数也可以有默认值
def add_numbers_2(a, b=5):
    sum_v = a + b
    print(sum_v)


# 函数值返回，用关键词return
def add_numbers_3(a, b=8):
    """
    计算总和
    :param a: 第一个值
    :param b: 第二个值
    :return:
    """
    sum_v = a + b
    return sum_v


# add_numbers(1, 2)
# add_numbers_2(1)
# print(add_numbers_3(3))

# 可变数量的参数，通过*args或者**kwargs传入不确定数量的参数
def add_all(*args):
    """以一个元组的数据类型存储传递过来的数据"""
    print(args)


def add_all_2(**kwargs):
    """以一个字典的数据类型来存储传递过来的数据"""
    print(kwargs)


add_all(1, 2, 3, 4, 5, 6, 7, 8, 9)
add_all_2(a=1, b=2, c=3)
